package com.sf.fy.uav.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.sf.fy.uav.common.request.operate.PopScreenReq;
import com.sf.fy.uav.common.request.operate.PopScreenRequest;
import com.sf.fy.uav.common.response.operational.PopUpScreenResponse;
import com.sf.fy.uav.common.utils.Rs;
import com.sf.fy.uav.entity.PopUpScreen;

import java.util.List;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author LTQ
 * @since 2023-11-20
 */
public interface IPopUpScreenService extends IService<PopUpScreen> {

    /**
     * 获取
     * @return
     */
    List<PopUpScreenResponse> getPopUpScreen();

    /**
     * 获取弹屏分页数据
     * @param popScreenRequest
     * @return
     */
    Page<PopUpScreen> getPopUpScreenPageList(PopScreenRequest popScreenRequest);

    /**
     * 插入弹屏
     * @param popScreenReq
     * @return
     */
    Rs<Integer> savePopScreen(PopScreenReq popScreenReq);

    /**
     * 更新弹屏
     * @param popScreenReq
     * @return
     */
    Rs<Integer> updateEntiyById(PopScreenReq popScreenReq);

    /**
     * 逻辑删除弹屏
     * @param popScreenReq
     * @return
     */
    Rs<Integer> delPopScreenById(PopScreenReq popScreenReq);

    /**
     * 查询未开始的弹屏
     * @return
     */
    List<PopUpScreen> getNoStartPopUpScreen();

    /**
     * 获取进行中的弹屏
     * @return
     */
    List<PopUpScreen> getInProgressPopUpScreen();

}
